home *** CD-ROM | disk | FTP | other *** search
/ Utilities Professional 1-1500 / Utilities Professional 1-1500 (1994)(WPD)[!].iso / 12511500 / var1274.dms / var1274.adf / VideoMaxe / InstallVM < prev    next >
Text File  |  1992-09-02  |  13KB  |  366 lines

  1. ; $VER: InstallVM 01.20 (16 Sep 1993) © Stephan Sürken
  2.  
  3. ; TEXT DEFINITIONS
  4.  
  5. (set stepsHelp
  6.      (cat "\n"
  7.           "This window lets you choose the steps this script should "
  8.           "perform. It can be used for four main purposes:\n\n"
  9.           " (0) accomplish a minor update\n"
  10.           " (1) accomplish a complete new installation\n"
  11.           " (2) update older VideoMaxe files\n\n"
  12.           " You can freely choose which steps should actually be "
  13.           "performed, except that steps 0 and 1 exclude themselves.\n\n"
  14.           " STEP 0: Will only copy the VideoMaxe program file, "
  15.           "the new documentation files and the language "
  16.           "localization files. You should use this "
  17.           "if you want to install an update without file format "
  18.           "changes. Thus your VideoMaxe configuration "
  19.           "remain as it was (note that hence you will not "
  20.           "recognize new configuration design (e.g. new icons) "
  21.           "of the new release).\n"
  22.           " STEP 1: Will accomlish a complete new instalation "
  23.           "of VideoMaxe. Use this if you are a new user or "
  24.           "updating from the 3.XX version (as you can`t reuse "
  25.           "VideoMaxe 3.XX configuration...).\n"
  26.           "Choose this too if you are not sure what to select, "
  27.           "as this will in any case produce a runable installation "
  28.           "of the new version.\n"
  29.           " STEP 2: Lets you update older VideoMaxe files with "
  30.           "the CLI-Tool VMConvert.\n\n"
  31.           "Note that if you however forgot anything, you can "
  32.           "call this script again, performing only the "
  33.           "furthermore needed steps.\n\n"))
  34.  
  35. (set destDirHelp
  36.      (cat "\n"
  37.           "Into the directory you choose here all files "
  38.           "important for VideoMaxe are placed during the "
  39.           "installation procedure.\n"
  40.           "Note that this directory must be empty, so "
  41.           "normally you will create a new directory at "
  42.           "this point.\n\n"))
  43.  
  44. (set langHelp
  45.      (cat "\n"
  46.           "Since OS 2.1, the Amiga can operate in different "
  47.           "languages if the application supports them. VideoMaxe "
  48.           "up to now supports English (as default, `built-in` "
  49.           "language), German (Deutsch) and French (Français).\n"
  50.           "Simply check the languages you want VideoMaxe to "
  51.           "support.\n\n"))
  52.  
  53. (set exampleFilesHelp
  54.      (cat "\n"
  55.           "VideoMaxe comes with various example files.\n"
  56.           "`Projects' contains example project files. "
  57.           "`MaskList' contains example mask list files. "
  58.           "`PrtPrefs' contains example printer preferences files. "
  59.           "`VideoRecorder' contains example video recorder files.\n\n"))
  60.  
  61. (set docsHelp
  62.      (cat "\n"
  63.           "VideoMaxe comes with two differently formatted files "
  64.           "containing its documentation. The first (VideoMaxe.doc) "
  65.           "is a plain ASCII text file (that could for example be "
  66.           "displayed with the standard text viewer More). The "
  67.           "second file (VideoMaxe.guide) is in AmigaGuide© format "
  68.           "and can be displayed by any hypertext displayer (e.g. "
  69.           "AmigaGuide).\n"
  70.           "I strongly urge to use the latter if you have the "
  71.           "opportunity to.\n\n"))
  72.  
  73. (set updateFilesHelp
  74.      (cat "\n"
  75.           "If you have worked with former versions of VideoMaxe "
  76.           "and there have been file format changes, you will want "
  77.           "to use these old files with the new version as well. "
  78.           "So, you have to update these files to the new formats.\n"
  79.           "This task is done by the CLI-Tool `VMConvert'; to "
  80.           "not let you nimble around with that Tool you can "
  81.           "comfortably update old files with this script!! "
  82.           "Simply choose the old file types you want to update; "
  83.           "you will then be asked for source and destination "
  84.           "file names.\n\n"))
  85.  
  86. (set V3XXVRECHelp
  87.      (cat "\n"
  88.           "Choose a VideoMaxe V3.XX video recorder file here. "
  89.           "In that release, these files normally were stored "
  90.           "in `VM:Treiber'. It will be updated to a video "
  91.           "recorder file that will work with the current "
  92.           "version of VideoMaxe.\n"
  93.           "If you have never worked with the 3.XX version "
  94.           "of VideoMaxe, you are completely wrong here.\n"
  95.           "Go away!\n\n"))
  96.  
  97. (set V3XXPROJECTHelp
  98.      (cat "\n"
  99.           "Choose a VideoMaxe V3.XX project file here. "
  100.           "In that release, these files normally were stored "
  101.           "in `VM:Projekte'. It will be updated to a project "
  102.           "file that will work with the current "
  103.           "version of VideoMaxe.\n"
  104.           "If you have never worked with the 3.XX version "
  105.           "of VideoMaxe, you are completely wrong here.\n"
  106.           "Go away!\n\n"))
  107.  
  108. ;------------------
  109. (PROCEDURE CopyCats
  110. ; ARGS: destDir
  111.  
  112. (if (NOT (exists "LOCALE:"))        ; `LOCALE:' THERE?
  113.      ((message "\n You have no LOCALE: directory; will copy "
  114.                "catalogs to program directory!")
  115.       (set catDest (tackon destDir "Catalogs"))
  116.      )
  117.      ((set catDest ("LOCALE:Catalogs"))
  118.      )
  119. ) ; fi
  120.  
  121. (makedir catDest); maybe existent
  122. (copyfiles (prompt "Which languages (additionally to the built-in language "
  123.                    "english) should be supported by VideoMaxe?")
  124.            (source "Catalogs")
  125.            (dest catDest)
  126.            (choices "Deutsch"
  127.                     "Français")
  128.            (confirm)
  129.            (help langHelp @copyfiles-help))
  130.  
  131. );ENDPROC CopyCats
  132. ;-----------------
  133.  
  134. ;------------------
  135. (PROCEDURE CopyDocs
  136. ; ARGS: destDir, docsHelp
  137.  
  138. (copyfiles (prompt "Which documentation files should be copied?")
  139.            (source "Docs")
  140.            (dest (tackon destDir "Docs"))
  141.            (choices "VideoMaxe.doc"
  142.                     "VideoMaxe.guide")
  143.            (confirm)
  144.            (infos)
  145.            (noposition)
  146.            (help docsHelp @copyfiles-help))
  147.  
  148. );ENDPROC CopyDocs
  149. ;------------------
  150.  
  151. ; INITIAL SETTINGS
  152.  
  153. (set steps %010)
  154. (set destDir "Work:VideoMaxe")
  155. (set @default-dest destDir)
  156.  
  157. ; WELCOME OUT THERE!
  158.  
  159. (welcome)
  160.  
  161. ; WHICH STEPS?
  162.  
  163. (set ok 0)
  164. (until ok
  165.  
  166.        (set steps (askoptions (prompt "Which steps should be performed?")
  167.                               (default steps)
  168.                               (help stepsHelp @askoptions-help)
  169.                               (choices "Minor update"
  170.                                        "New installation"
  171.                                        "Update files")))
  172.  
  173.        ; STEPS 0 AND 1 SELECTED?
  174.  
  175.        (set ok (NOT (AND (> (IN steps 0) 0) (> (IN steps 1) 0))))
  176.        (if (NOT ok) ((message "\nYou must not choose step 0 AND step 1!")))
  177. )
  178.  
  179. (if (IN steps 0)
  180. (
  181. ;====================================
  182. (message "\nSTEP ZERO: MINOR UPDATE")
  183. ;====================================
  184.  
  185. ; GET DEST DIR
  186.  
  187. (set ok 0)
  188. (until ok
  189.        (set destDir (askdir (prompt "Please specify the directory VideoMaxe "
  190.                              "is installed in:")
  191.                             (default "VM:")
  192.                             (help ©askdir-help)))
  193.        (set ok (exists destDir))            ; dest dir ok
  194.        (if (NOT ok) (message "\nSpecified directory does not exist!"))
  195. )
  196. (set @default-dest destDir)
  197.  
  198. ; COPY DOC FILES
  199.  
  200. (CopyDocs)
  201.  
  202. ; COPY LOCALIZATION FILES
  203.  
  204. (CopyCats)
  205.  
  206. ;===================================
  207. (message "\nMINOR UPDATE COMPLETE.")
  208. ;===================================
  209. ))
  210.  
  211.  
  212. (if (IN steps 1)
  213. (
  214. ;=======================================
  215. (message "\nSTEP ONE: NEW INSTALLATION")
  216. ;=======================================
  217.  
  218. ; GET DEST DIR
  219.  
  220. (set ok 0)
  221. (until ok
  222.        (set destDir (askdir (prompt "Please specify the directory VideoMaxe "
  223.                                     "should be installed to (must be empty):")
  224.                             (default "Work:VideoMaxe")
  225.                             (help destDirHelp @askdir-help)))
  226.        (set ok 1)                ; dest dir ok
  227.        (foreach destDir "#?" (set ok 0))    ; or not? - must be empty!
  228.        (if (NOT ok) (message "\nSpecified directory is not empty!"))
  229. )
  230. (set @default-dest destDir)
  231.  
  232. ; CREATE DIRS
  233.  
  234. (working "Creating needed sub-directories...")
  235.  
  236. (makedir (tackon destDir "Config"))
  237. (copyfiles (source "Config.info") (dest destDir))
  238. (makedir (tackon destDir "Projects"))
  239. (copyfiles (source "Projects.info") (dest destDir))
  240. (makedir (tackon destDir "MaskLists"))
  241. (copyfiles (source "MaskLists.info") (dest destDir))
  242. (makedir (tackon destDir "PrtPrefs"))
  243. (copyfiles (source "PrtPrefs.info") (dest destDir))
  244. (makedir (tackon destDir "VideoRecorder"))
  245. (copyfiles (source "VideoRecorder.info") (dest destDir))
  246.  
  247. ; COPY CRUCIAL FILES
  248.  
  249. (working "Copying crucial files...")
  250.  
  251. (copyfiles (source "VideoMaxe")    (dest destDir) (infos))    ; light version
  252. (copyfiles (source "AssignVM")    (dest destDir) (infos))
  253. (copyfiles (source "Config")    (dest (tackon destDir "Config")) (infos) (all))
  254.  
  255. ; COPY EXAMPLE FILES
  256.  
  257. (copyfiles (prompt "Which example files should be copied?")
  258.            (source "")
  259.            (dest destDir)
  260.            (choices "Projects"
  261.                     "MaskLists"
  262.                     "PrtPrefs"
  263.                     "VideoRecorder")
  264.            (help exampleFilesHelp @copyfiles-help)
  265.            (confirm)
  266.            (infos))
  267.  
  268. ; COPY DOC FILES
  269.  
  270. (CopyDocs)
  271.  
  272. ; COPY LOCALIZATION FILES
  273.  
  274. (CopyCats)
  275.  
  276. ; SYSTEM STARTUP
  277.  
  278. (startup "VideoMaxe" (Prompt "Should the logical device VM: be assigned "
  279.                              "automatically with your system`s startup?")
  280.                      (help @startup-help)
  281.                      (command "Assign VM: " destDir))
  282.  
  283. ;=======================================
  284. (message "\nNEW INSTALLATION COMPLETE.")
  285. ;=======================================
  286. ))
  287.  
  288.  
  289. (if (IN steps 2)
  290. (
  291. ;=====================================
  292. (message "\nSTEP TWO: UPDATING FILES")
  293. ;=====================================
  294.  
  295. (set updates (askoptions (prompt "Which old file types do you want "
  296.                                  "to update to current version?")
  297.                          (help updateFilesHelp @askoptions-help)
  298.                          (choices "VideoMaxe 3.XX video recorder files"
  299.                                   "VideoMaxe 3.XX project files")))
  300.  
  301. (if (IN updates 0)    ; V3XXVREC
  302.             (
  303.             ; GET DEST FILE
  304.             (set sourceFile "VM:Treiber")
  305.             (set destFile (tackon destDir "VideoRecorder"))
  306.  
  307.             (set ok 1)
  308.             (while ok
  309.                    ; GET SOURCE
  310.                    (set sourceFile (askfile (prompt "Please specify the old VideoMaxe "
  311.                                                     "3.XX video recorder file:")
  312.                                             (default sourceFile)
  313.                                             (help V3XXVRecHelp @askfile-help)))
  314.                    ; GET DEST
  315.                    (set destFile (askfile (prompt "Please specify the name for "
  316.                                                   "the updated output file:")
  317.                                           (default destFile)
  318.                                           (help @askfile-help)))
  319.  
  320.                    (if (exists destFile)
  321.                        ((message "\nCouldn`t convert: Destination file already exists!"))
  322.                        ((run ("Tools/VMConvert >CON:20/20/400/200/Updating/CLOSE/WAIT V3XXVREC %s %s" sourceFile destFile)))
  323.                    )
  324.                    (set ok (askbool (prompt "\nUpdate more files of that type?\n")
  325.                                     (help ©askbool-help)
  326.                                     (choices "Yes" "No")))
  327.             )
  328.             )
  329. )
  330.  
  331. (if (IN updates 1)    ; V3XXPROJECT
  332.             (
  333.             ; GET DEST FILE
  334.             (set sourceFile "VM:Projekte")
  335.             (set destFile (tackon destDir "Projects"))
  336.  
  337.             (set ok 1)
  338.             (while ok
  339.                    ; GET SOURCE
  340.                    (set sourceFile (askfile (prompt "Please specify the old VideoMaxe "
  341.                                                     "3.XX project file:")
  342.                                             (default sourceFile)
  343.                                             (help V3XXProjectHelp @askfile-help)))
  344.                    ; GET DEST
  345.                    (set destFile (askfile (prompt "Please specify the name for "
  346.                                                   "the updated output file:")
  347.                                           (default destFile)
  348.                                           (help @askfile-help)))
  349.  
  350.                    (if (exists destFile)
  351.                        ((message "\nCouldn`t convert: Destination file already exists!"))
  352.                        ((run ("Tools/VMConvert >CON:20/20/400/200/Updating/CLOSE/WAIT V3XXPROJECT %s %s" sourceFile destFile)))
  353.                    )
  354.                    (set ok (askbool (prompt "\nUpdate more files of that type?\n")
  355.                                     (help ©askbool-help)
  356.                                     (choices "Yes" "No")))
  357.             )
  358.             )
  359. )
  360. ;===============================
  361. (message "\nUPDATING COMPLETE.")
  362. ;===============================
  363. ))
  364.  
  365. (exit)
  366.